WordPressでカテゴリ(category)を取得する

最終更新日:

本記事は、リクルート・マイナビ・ビズリーチ等の広告も含みます。

河合大
監修
河合大


株式会社インディバース

SEOコンサルタント/Webエンジニア

新卒で株式会社ワークスアプリケーションズにて、QAエンジニアとして主に認証基盤のテスト担当。OAuth2.0の認証基盤の品質保証業務に従事。
その後株式会社アイデミーにてアフィリエイト広告を利用したマーケティングを、広告主としてリード。
のちに株式会社ポジウィルにて、アフィリエイト広告、その他マーケティングを担当。CMOに就任。
2019年8月に株式会社インディバースを創業。IT系のキャリア領域のメディア運営・アフィリエイトメディア向けのSaaSサービス/Webサイト制作などを行う。

WordPressでカテゴリ関係の関数をいじる

こんにちは、DAINOTE編集部のDAIです。

WordPressで、カテゴリ系の関数をいじっていたのですが、資料がリファレンスしか見つからなかったので、整理しておきます。

ブログのすべてのカテゴリを取得する

  • get_categories()関数を利用すると、配列でカテゴリのデータが取得可能
  • これらをループして、表示する
$categories = get_categories(); 
foreach($categories as $category) {
  echo $category->term_id
  echo $category->name
  echo $category->slug
  echo $category->term_group
  echo $category->term_taxonomy_id
  echo $category->taxonomy
  echo $category->description
  echo $category->parent
  echo $category->count
  echo $category->cat_ID
  echo $category->category_count
  echo $category->category_description
  echo $category->cat_name
  echo $category->category_nicename
  echo $category->category_parent
}

関数リファレンス/get categories

how to display all categories in wordpress?

現在の記事のカテゴリを取得する

  1. get_the_category()[0]: 現在のカテゴリをリスト形式で取得する。一般的に1カテゴリにしか属していないはずなので、[0]で先頭行を指定
  2. 後は、カテゴリオブジェクトの中に含まれている値を取り出していく
  3. 以下のコードは、カテゴリから、カテゴリの名前、件数、説明を抽出しているコードです。

下のコードは、カテゴリページで、カテゴリ詳細を表示するスクリプトです。

<?php
  if(is_category()){
    $category = get_the_category()[0];
    echo '
      <div id="category-container">
        <h3 class="category__name">' . $category->name . '</h3>
        <span class="category__name">投稿数: ' . $category->category_count. '件</span>
        <div class="category__description post-content__text">' . $category->description. '</div>
      </div>
    ';
 };
?>

以上、カテゴリ系の簡単なサンプルコードでした。

河合大
監修 河合大

株式会社インディバース SEOコンサルタント/Webエンジニア

新卒で株式会社ワークスアプリケーションズにて、QAエンジニアとして主に認証基盤のテスト担当。OAuth2.0の認証基盤の品質保証業務に従事。 その後株式会社アイデミーにてアフィリエイト広告を利用したマーケティングを、広告主としてリード。 のちに株式会社ポジウィルにて、アフィリエイト広告、その他マーケティングを担当。CMOに就任。 2019年8月に株式会社インディバースを創業。IT系のキャリア領域のメディア運営・アフィリエイトメディア向けのSaaSサービス/Webサイト制作などを行う。